1. Field of the Invention
The present invention relates generally to a channel encoding/decoding device and method in a communications system, and in particular, to a device and method of adaptive channel encoding/decoding to efficiently transmit/receive voice and data.
2. Description of the Related Art
Third-generation digital communication systems offer diverse services and use data frames of a variable size ranging from several bits to several thousands of bits. To encode data in such systems, three types of channel encoders are typically used: Reed-Solomon encoder, convolutional encoder, and Reed Solomon-convolutional concatenated encoder. Since it is very difficult to satisfy the various system requirements including bit error rate (BER) and time delay, an appropriate channel encoder should be selected depending on service type and frame length.
Each of the above channel encoders have their respective advantages and disadvantages as described below:
(1) A disadvantage of the Reed-Solomon encoder is that an outer interleaver is required, resulting in time delay; PA1 (2) Convolutional codes exhibit excellent performance characteristics for a short input frame and a BER of 10.sup.-3 as in voice service but exhibit poor performance for a very low BER as in a data service; PA1 (3) Reed Solomon-Convolutional concatenated codes are used to overcome the shortcoming of the convolutional codes in a data service. These concatenated codes exhibit excellent in performance for data transmission and reception requiring a BER of about 10.sup.-6. Yet, the use of two encoders increases system complexity. In addition, there is an undesirable time delay associated with the Reed-Solomon encoder.
It is well-known in the art that a turbo encoder is attractive for a service with a long data frame and a low BER requirement such as a data service. The turbo encoder is popular due to its well recognized advantages over the concatenated encoder in terms of performance, system complexity, and time delay.
Using two simple parallel concatenated component codes, the turbo encoder generates parity symbols from input of an N-information bit frame. The component codes for the turbo encoder are recursive systematic convolutional (RSC) codes. A well recognized example of a turbo encoder/decoder is disclosed in U.S. Pat. No. 5,446,747 entitled "Error-Correction Coding Method With At Least Two Systematic Convolutional Coding In Parallel, Corresponding Iterative Module and Decoder", by Berrow.
The turbo encoder disclosed in the ('747) patent exhibits improved FEC (forward error correction) performance as an input data frame becomes longer in time. The longer the data frame or the higher data rate, the larger an interleaver of the turbo encoder and the longer a time delay. With input of a short data frame, the turbo encoder cannot exert its full performance. Turbo codes are best suited to applications such as a data service requiring a BER of 10.sup.-6, and conversely, are ill suited to convolutional codes such as a voice service with a 100 or less-bit data frame (i.e., short data frame).